﻿using System.ComponentModel.DataAnnotations;

namespace EMC.VISITOR.Application;

    /// <summary>
    /// 人臉分組基础输入参数
    /// </summary>
    public partial class FaceGroupBaseInput
    {
        /// <summary>
        /// 人臉分組唯一碼
        /// </summary>
        public virtual string? indexCode { get; set; }
        
        /// <summary>
        /// 分組名稱
        /// </summary>
        public virtual string? name { get; set; }
        
        /// <summary>
        /// 分組描述
        /// </summary>
        public virtual string? description { get; set; }
        
        /// <summary>
        /// 創建時間
        /// </summary>
        public virtual DateTime? CreateTime { get; set; }
        
        /// <summary>
        /// 更新時間
        /// </summary>
        public virtual DateTime? UpdateTime { get; set; }
        
        /// <summary>
        /// 創建人
        /// </summary>
        public virtual long? CreateUserId { get; set; }
        
        /// <summary>
        /// 修改人
        /// </summary>
        public virtual long? UpdateUserId { get; set; }
        
    }

    /// <summary>
    /// 人臉分組分页查询输入参数
    /// </summary>
    public partial class FaceGroupInput : BasePageInput
    {
        /// <summary>
        /// 关键字查询
        /// </summary>
        public string SearchKey { get; set; }

            /// <summary>
            /// 人臉分組唯一碼
            /// </summary>
            public string? indexCode { get; set; }
            
            /// <summary>
            /// 分組名稱
            /// </summary>
            public string? name { get; set; }
            
            /// <summary>
            /// 分組描述
            /// </summary>
            public string? description { get; set; }
            
    }

    /// <summary>
    /// 人臉分組增加输入参数
    /// </summary>
    public partial class AddFaceGroupInput : FaceGroupBaseInput
    {
        /// <summary>
        /// 分組名稱
        /// </summary>
        [Required(ErrorMessage = "分組名稱不能为空")]
        public override string? name { get; set; }
        
        /// <summary>
        /// 分組描述
        /// </summary>
        [Required(ErrorMessage = "分組描述不能为空")]
        public override string? description { get; set; }
        
    }

    /// <summary>
    /// 人臉分組删除输入参数
    /// </summary>
    public partial class DeleteFaceGroupInput : BaseIdInput
    {
    }

    /// <summary>
    /// 人臉分組更新输入参数
    /// </summary>
    public partial class UpdateFaceGroupInput : FaceGroupBaseInput
    {
        /// <summary>
        /// Id
        /// </summary>
        [Required(ErrorMessage = "Id不能为空")]
        public long? Id { get; set; }
        
    }

    /// <summary>
    /// 人臉分組主键查询输入参数
    /// </summary>
    public partial class QueryByIdFaceGroupInput : DeleteFaceGroupInput
    {

    }
